package com.zbkj.service.dividend.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zbkj.common.request.PageParamRequest;
import com.zbkj.service.dividend.model.DividendPoolConfig;
import com.zbkj.service.dividend.request.DividendPoolConfigRequest;

import java.util.List;

/**
 * 分红档位配置服务接口
 */
public interface DividendPoolConfigService extends IService<DividendPoolConfig> {

    /**
     * 获取分红档位列表（分页）
     */
    List<DividendPoolConfig> getList(PageParamRequest pageParamRequest);

    /**
     * 获取 分红池总额/订单总额 占比配置
     */
    String getTotalPoolRatio();

    /**
     * 获取所有启用的分红档位配置
     */
    List<DividendPoolConfig> getAllActiveConfigs();

    /**
     * 新增分红档位配置
     */
    boolean create(DividendPoolConfigRequest request);

    /**
     * 修改分红档位配置
     */
    boolean edit(Integer id, DividendPoolConfigRequest request);

    /**
     * 更新状态
     */
    boolean updateStatus(Integer id, Boolean isActive);

    /**
     * 检查档位是否存在
     */
    boolean checkLevelExists(Integer level, Integer excludeId);

    /**
     * 获取用户当前分红配置
     */
    DividendPoolConfig getCurrentDividendConfig(Integer dividendId);
}